home *** CD-ROM | disk | FTP | other *** search
/ Programming Sound Cards / Programming Sound Cards.iso / sound_80 / record.pas < prev    next >
Pascal/Delphi Source File  |  1995-01-01  |  1KB  |  48 lines

  1. program RecordS;
  2.  
  3. uses
  4.   MMSystem,
  5.   WinCrt;
  6. function RecordSound(MMSecs: LongInt): LongInt;
  7. var
  8.   DeviceID: Word;
  9.   Return: LongInt;
  10.   MciOpen: TMCI_Open_Parms;
  11.   MciRecord: TMCI_Record_Parms;
  12.   MciPlay: TMCI_Play_Parms;
  13.   MciSave: TMCI_SaveParms;
  14.   Result: LongInt;
  15.   Flags: Word;
  16.  
  17. begin
  18.   MciOpen.lpstrDeviceType := 'waveaudio';
  19.   MciOpen.lpstrElementName := '';
  20.   Flags := Mci_Open_Element or Mci_Open_Type;
  21.   Result := MciSendCommand(0, MCI_OPEN, Flags, LongInt(@MciOpen));
  22.   DeviceID := MciOpen.wDeviceId;
  23.  
  24.   WriteLn('Record');
  25.   MciRecord.dwTo := MMSecs;
  26.   Flags := Mci_To or Mci_Wait;
  27.   Result := MciSendCommand(DeviceID, Mci_Record, Flags, LongInt(@MciRecord));
  28.  
  29.   WriteLn('Stop');
  30.   mciPlay.dwFrom := 0;
  31.   Flags := Mci_From or Mci_Wait;
  32.   MciSendCommand(DeviceId, Mci_Play, Flags, LongInt(@MciPlay));
  33.  
  34.  
  35.   mciSave.lpfileName := 'MyWave.Wav';
  36.   Flags := MCI_Save_File or Mci_Wait;
  37.   Result := MciSendCommand(DeviceID, MCI_Save, Flags, LongInt(@MciSave));
  38.  
  39.   MciSendCommand(DeviceID, Mci_Close, 0, LongInt(nil));
  40.  
  41. end;
  42.  
  43.  
  44. begin
  45.   WriteLn('Hello');
  46.   RecordSound(10000);
  47.   WriteLn('GoodBye');
  48. end.